// nc88 寻找第K大
// https://www.nowcoder.com/practice/e016ad9b7f0b45048c58a9f27ba618bf
// 有一个整数数组，请你根据快速排序的思路，找出数组中第 k 大的数。
// 给定一个整数数组 a ,同时给定它的大小n和要找的 k ，请返回第 k
// 大的数(包括重复的元素，不用去重)，保证答案存在。
//输入：[1,3,5,2,2],5,3
//返回值：2
#include <algorithm>
#include <string>
#include <vector>
using namespace std;

class Solution {
 public:
  int findKth(vector<int> a, int n, int K) {
    // write code here
    std::sort(a.begin(), a.end(), [](int n1, int n2) { return n1 > n2; });
    std::for_each(a.begin(), a.end(), [](int n) { printf("%d.", n); });
    if (K < a.size()) {
      return a[K];
    }
    return 0;
  }
};
